package ru.ssau.university.ejb.api;

import java.util.List;

import ru.ssau.university.persistence.entity.Admin;
import ru.ssau.university.persistence.entity.Department;
import ru.ssau.university.persistence.entity.Faculty;
import ru.ssau.university.persistence.entity.Group;
import ru.ssau.university.persistence.entity.PlanItem;
import ru.ssau.university.persistence.entity.Progress;
import ru.ssau.university.persistence.entity.Schedule;
import ru.ssau.university.persistence.entity.Student;
import ru.ssau.university.persistence.entity.Teacher;

public interface UniversityService {
	public List<Faculty> getFaculties();
	public List<Department> getDepartments(); 
	public List<Department> getDepartmentsForFaculty(Long facultyId);
	public List<Teacher> getTeacherByDepartment(Long departmentId);
	public Teacher loginAsTeacher(Long teacherId, String password);
	public Admin   loginAsAdmin(String userName, String password);
	public List<Group> getGroupsByFacultyId(Long id);
	public List<Student> getStudentsByGroup(Long id);
	public void saveOrUpdateStudent(Student s);
	public Schedule getSchedule(Long groupId, int week, int dayOfWeek, int lesson);
	public Group getGroupById(Long groupId);
	public List<PlanItem> getPlanItems(Long specId, int term);
	public void saveOrUpdateSchedule(Schedule schedule);
	public void deleteSchedule(Schedule schedule);
	public Progress getProgress(Long studentId, Long planItemId, int numb);
	public void saveOrUpdateProgress(Progress p);
	public void deleteStudent(Long studentId);
}